home *** CD-ROM | disk | FTP | other *** search
-
-
-
- CCCCLLLLAAAAHHHHRRRRDDDD((((3333FFFF)))) CCCCLLLLAAAAHHHHRRRRDDDD((((3333FFFF))))
-
-
-
- NNNNAAAAMMMMEEEE
- CLAHRD - reduce the first NB columns of a complex general n-by-(n-k+1)
- matrix A so that elements below the k-th subdiagonal are zero
-
- SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
- SUBROUTINE CLAHRD( N, K, NB, A, LDA, TAU, T, LDT, Y, LDY )
-
- INTEGER K, LDA, LDT, LDY, N, NB
-
- COMPLEX A( LDA, * ), T( LDT, NB ), TAU( NB ), Y( LDY, NB )
-
- PPPPUUUURRRRPPPPOOOOSSSSEEEE
- CLAHRD reduces the first NB columns of a complex general n-by-(n-k+1)
- matrix A so that elements below the k-th subdiagonal are zero. The
- reduction is performed by a unitary similarity transformation Q' * A * Q.
- The routine returns the matrices V and T which determine Q as a block
- reflector I - V*T*V', and also the matrix Y = A * V * T.
-
- This is an auxiliary routine called by CGEHRD.
-
-
- AAAARRRRGGGGUUUUMMMMEEEENNNNTTTTSSSS
- N (input) INTEGER
- The order of the matrix A.
-
- K (input) INTEGER
- The offset for the reduction. Elements below the k-th subdiagonal
- in the first NB columns are reduced to zero.
-
- NB (input) INTEGER
- The number of columns to be reduced.
-
- A (input/output) COMPLEX array, dimension (LDA,N-K+1)
- On entry, the n-by-(n-k+1) general matrix A. On exit, the
- elements on and above the k-th subdiagonal in the first NB
- columns are overwritten with the corresponding elements of the
- reduced matrix; the elements below the k-th subdiagonal, with the
- array TAU, represent the matrix Q as a product of elementary
- reflectors. The other columns of A are unchanged. See Further
- Details. LDA (input) INTEGER The leading dimension of the
- array A. LDA >= max(1,N).
-
- TAU (output) COMPLEX array, dimension (NB)
- The scalar factors of the elementary reflectors. See Further
- Details.
-
- T (output) COMPLEX array, dimension (NB,NB)
- The upper triangular matrix T.
-
- LDT (input) INTEGER
- The leading dimension of the array T. LDT >= NB.
-
-
-
-
- PPPPaaaaggggeeee 1111
-
-
-
-
-
-
- CCCCLLLLAAAAHHHHRRRRDDDD((((3333FFFF)))) CCCCLLLLAAAAHHHHRRRRDDDD((((3333FFFF))))
-
-
-
- Y (output) COMPLEX array, dimension (LDY,NB)
- The n-by-nb matrix Y.
-
- LDY (input) INTEGER
- The leading dimension of the array Y. LDY >= max(1,N).
-
- FFFFUUUURRRRTTTTHHHHEEEERRRR DDDDEEEETTTTAAAAIIIILLLLSSSS
- The matrix Q is represented as a product of nb elementary reflectors
-
- Q = H(1) H(2) . . . H(nb).
-
- Each H(i) has the form
-
- H(i) = I - tau * v * v'
-
- where tau is a complex scalar, and v is a complex vector with v(1:i+k-1)
- = 0, v(i+k) = 1; v(i+k+1:n) is stored on exit in A(i+k+1:n,i), and tau in
- TAU(i).
-
- The elements of the vectors v together form the (n-k+1)-by-nb matrix V
- which is needed, with T and Y, to apply the transformation to the
- unreduced part of the matrix, using an update of the form: A := (I -
- V*T*V') * (A - Y*V').
-
- The contents of A on exit are illustrated by the following example with n
- = 7, k = 3 and nb = 2:
-
- ( a h a a a )
- ( a h a a a )
- ( a h a a a )
- ( h h a a a )
- ( v1 h a a a )
- ( v1 v2 a a a )
- ( v1 v2 a a a )
-
- where a denotes an element of the original matrix A, h denotes a modified
- element of the upper Hessenberg matrix H, and vi denotes an element of
- the vector defining H(i).
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- PPPPaaaaggggeeee 2222
-
-
-
-